perm filename ROMANL.MF[CM,DEK]1 blob sn#786757 filedate 1985-02-23 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00003 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	% Computer Modern Roman lower case:
C00003 00003	cmchar "The letter e"
C00006 ENDMK
C⊗;
% Computer Modern Roman lower case:
% These letters were originally coded by D. E. Knuth in November, 1979,
% inspired by the Monotype alphabets used in {\sl The Art of Computer Programming}.
% Sans serif designs by Richard Southall were added in April, 1982.
% The programs were revised for the new \MF\ conventions in 1985.

% Character codes \¬141 through \¬172 are generated.
cmchar "The letter e";
beginchar("e",8u#,x_height#,0);
italcorr .5[bar_height#,x_height#]*slant+.5min(curve#-1.5u#,0);
adjust_fit(if monospace: .5u#,.5u# else: 0,0 fi);
numeric left_curve,right_curve,short_terminal;
left_curve=right_curve+5stem_corr=curve if not serifs: -3stem_corr fi;
if right_curve<tiny_breadth: right_curve:=tiny_breadth; fi
if left_curve<tiny_breadth: left_curve:=tiny_breadth; fi
penpos1(right_curve-tiny,0); penpos2(vair-tiny,90);
penpos3(left_curve-tiny,180); pickup tiny_pen;
y1=good.y bar_height; top y2r=h+o+oo; y0l=bot y1;
rt x1r=round min(w-.5u,w-u+.5right_curve);
lft x3r=round max(.5u,1.25u-.5left_curve); x2=.55[x3,x1];
{{interim superness:=sqrt .77superness;
loggingall;
 filldraw stroke super_arc.e(1,2)}};	% right bowl
tracingnone;
y3=.5[y2,y4]; bot y4r=-oo; x4=x2+.25u;
if serifs: penpos4(vair+hair_corr-tiny,270); penpos5(hair-tiny,360);
 y5=good.y .5bar_height-.9; x5r=x1r;
 (x4l',y4l)=whatever[z4r,z5]; x4l:=x4l';
 filldraw stroke super_arc.e(2,3) & super_arc.e(3,4)
   ..{curl 1}z5e; % left bowl, arc, and terminal
else: penpos4(vair-tiny,270);
 filldraw stroke super_arc.e(2,3) & super_arc.e(3,4);	% left bowl and arc
 penpos4'(vair-fine,270); z4=z4'; pickup fine_pen;
 short_terminal=.5[vair,flare]; top y5l=vround(1/3bar_height+.5short_terminal);
 y5l-y5r=short_terminal-fine; rt x5l=round(w-.6u); x5r=good.x(x5l-.1u);
 filldraw stroke z4'e{right}..z5e; fi	% terminal
path testpath; testpath=super_arc.l(2,3) & super_arc.l(3,4);
y1'r=y0r=y0l+.6[fine,vair]; y1'l=y0l; x1'l=x1'r=x1;
forsuffixes $=l,r: x0$=1+xpart
 (((0,y0$)--(x1,y0$)) intersectionpoint testpath); endfor
fill stroke z0e--z1'e;	% crossbar
penlabels(0,1,2,3,4,5); endchar;